namespace alpha_core_IdenticalExpr {
    // C
    void test() {
        int a = 5;
        int b = a | 4 | a; // warn: identical expr on both sides
    }

    // C++
    bool f(void);

    void test(bool b) {
        int i = 10;
        if (f()) { // warn: true and false branches are identical
            do {
                i--;
            } while (f());
        }
        else {
            do {
                i--;
            } while (f());
        }
    }
}